package HomeWork.Chapter04;
import java.util.Scanner;

/**
 * Enjoy programming!!!
 * Time: 2021/12/8 -  20:04
 */

class Fraction02{
    int a;
    int b;
    int temp;

    Fraction02(int m, int n)
    {
//        temp = Math.min(m, n);
//        while(temp >= 1)
//        {
//            if( m % temp == 0 && n % temp == 0 )
//            {
//                a = m / temp;
//                b = n / temp;
//                break;
//            }
//            temp--;//一直往下找，如果出现了分子分母都能整除的数，就是公约数（可优化为欧几米德算法）
//        }
        temp = divisor(n, m);
        a = m / temp;
        b = n / temp;

    }

    int getA()
    {
        return a;
    }
    int getB()
    {
        return b;
    }

    void print()
    {
        if(b==1)
        {
            System.out.println(a);
        }
        else if(a == b)
        {
            System.out.println("1");
        }
        else
        {
            System.out.print(a + "/" + b+" ");
        }
    }

    Fraction02 plus(Fraction02 r)
    {
        int a1 = a;
        int b1 = b;
        int a2 = r.getA();
        int b2 = r.getB();
//        int c = b1 * b2;

        temp = divisor(b1, b2);
//        temp = Math.min(b1, b2);
//        while(temp>=1)
//        {
//            if( b1%temp==0 && b2%temp==0 )
//            {
//                break;
//            }
//            temp--;
//        }
        int beishu = b1 * b2 /temp;//最小公倍数
        int fenzi = (beishu/b1*a1) + (beishu/b2*a2);

//        int x=0,y=0;
//        temp = Math.min(fenzi, beishu);
//        while(temp>=1)
//        {
//            if( fenzi%temp==0 && beishu%temp==0 )
//            {
//                x = fenzi/temp;
//                y = beishu/temp;
//            }
//            temp--;
//        }
        return new Fraction02(fenzi / divisor(fenzi, beishu), beishu / divisor(fenzi, beishu));
    }

    Fraction02 multiply(Fraction02 r)
    {
        return new Fraction02( (a * r.getA()) , (b * r.getB()) );
    }

    public int divisor(int n, int m){
        if (n > m ){
            int j = n;
            n = m;
            m = j;
        }
        while(m % n != 0){
            int temp = m % n;
            m = n;
            n = temp;
        }
        return n;
    }
}

class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        Fraction02 a = new Fraction02(in.nextInt(), in.nextInt());
        Fraction02 b = new Fraction02(in.nextInt(),in.nextInt());
        a.print();
        b.print();
        a.plus(b).print();
        a.multiply(b).print();
        in.close();
    }
}
